﻿<div style="width: 100%; height: 242px; display: block; overflow-y: scroll;">
    <div style="display: block;">
        <h3>Portal Keeper release notes</h3>
        <h4>Version 4.3.3</h4>
        <ul>
            <li>New: Sample Bot runs a stored procedure, convert results to a collection of objects, and sends a notification email with filtered objects injected with tokens</li>
            <li>New: Actions can be run individually on the fly</li>
            <li>Improved: Sql Action can convert datareaders into list of dictionaries or custom objects</li>
            <li>Improved: Optional json serialization in the configuration file section can improve initial startup</li>
            <li>Improved: Introduced a dedicated GIS component with improved sharpmap Kml provider</li>
            <li>Improved: Access control firewall rule saves the user's initial IP Address if none is found</li>
            <li>Improved: Added an optional default value to profile load and profile save actions</li>
            <li>Improved: Added a button to insert new item at any position in collection</li>
            <li>Improved: Added new parameters to control output caching strategy</li>
            <li>Improved: Added Pre Send Request Headers request event step in Firewall</li>
            <li>Fixed: Accordion Pager issues</li>
            <li>Fixed: DNN File picker errors with non default portals</li>
            <li>Fixed: Execute Sql Action missing localization</li>
            <li>Fixed: Action mode bot does not switch to rule mode</li>
            <li>Fixed: Firewall Referrer Spammers rule does not log an exception if no referrer is found</li>
            <li>Fixed: WMS Service and Sharpmap dependencies</li>
            <li>Fixed: Removed Streaming proxy forced flushing</li>
        </ul>
        <h4>Version 4.3.2</h4>
        <ul>
            <li>New: Artificial Intelligence Rest services (vol.2): Propositional and First Order logic with dynamic knowledge bases and inference procedures: Resolution, DPLL, Walksat, Model elimination, Otter etc. </li>
            <li>New: Artificial Intelligence: Probability with Bayesian networks and hidden markov models, exact and approximate inference: rejection sampling, Likelihood weighting, Gibbs sampling, Forward backward, Fixed lag smoothing, particle filtering etc.</li>
            <li>New: Artificial Intelligence: Service dedicated to the Game of Go, leveraging GnuGo, Gotraxx and CNTK to generate training sets and to run deep convoluted neural networks</li>
            <li>New: Call Service Action: invoke dynamic hosted web API services server side, without the overhead of an Http Request.</li>
            <li>New: Control Adapter adds a text editor to Asset manager by hijacking the module creator source editor, handy for skin editing</li>
            <li>Improved: Html filter local transformer parses Markdown syntax: enable wikipedia formatting where you need it</li>
            <li>Improved: Expression Filter supports tokens and markdown parsing</li>
            <li>Improved: Run Program action fixed, localized and supports custom working directory</li>
            <li>Improved: Added Recursive A star and Greedy Best first search strategies</li>
            <li>Improved: CSV serializer updated to latest FileHelpers version + supports escaped delimiter (e.g tabulations)</li>
            <li>Fixed: Restored Search Result Scraper bot parameters and corresponding user bots parameter overrides</li>
        </ul>
        <h4>Version 4.3.1</h4>
        <ul>
            <li>New: Artificial intelligence Rest services (vol.1): search, games, csp with dynamic strategies and demo</li>
            <li>New: Firewall rule to block referrer spammers with optimized Radixtree lookup of +8000 domains</li>
            <li>New: Customizable current user Rest service for client side access</li>
            <li>New: Auto-checking "Remember me" control adapter</li>
            <li>Improved: DNN 8 Compatible</li>
            <li>Improved: Web API dynamic parameters can have default values</li>
            <li>Improved: Compact Serialization of Static and Dynamic Objects in XML and JSON (default config 70% size reduction)</li>
            <li>Improved: Agent Rules can be run on the fly</li>
            <li>Improved: Http Response headers can be captured in a custom variable</li>
            <li>Improved: String Filter options to split, reverse or escape a string</li>
            <li>Improved: Tighten Advanced Token Replace regex expressions to support javascript</li>
            <li>Improved: Edit and Continue extended to FCNMode=0</li>
            <li>Fixed: Sub-HttpHandlers Token replace for fiddles</li>
            <li>Fixed: Simultaneous connection detection race condition in session mode (shared IP)</li>
            <li>Fixed: Added synchronization lock in rule processing to avoid rare race condition</li>
            <li>Fixed: Unregister command button</li>
        </ul>
        <h4>Version 4.3.0</h4>
        <ul>
            <li>New: Application lifecycle Engine hooked to the application events</li>
            <li>New: Application Rule to log critical change notifications information</li>
            <li>New: Application Rule to optimize translators environment</li>
            <li>New: Application Rule to optimize developers environment</li>
            <li>Improved: Added cut command to collection single or multiple items</li>
            <li>Improved: AutoProviders import sets min and max events</li>
            <li>Improved: SessionCloningJob accelerates 1st postback and save</li>
            <li>Fixed: Added missing localizations</li>
        </ul>
        <h4>Version 4.2.3</h4>
        <ul>
            <li>New: Dynamic Adapter enhances KeepAlive.aspx by preloading user controls, Dnn pages, modules and permissions </li>
            <li>Improved: Dynamic Adapters can adapt aspx pages from path (previously only from types)</li>
            <li>Improved: Streaming proxy filter covers more urls to "proxify"</li>
            <li>Improved: Better accessibility (tooltips, enable/disable toggles etc.)</li>
            <li>Fixed: Streaming proxy had a bug with empty application paths</li>
            <li>Fixed: Inner messages were eaten up in case of late databinding after data changes</li>
            <li>Fixed: Some naming container issues, where command button had to be clicked twice to operate</li>
        </ul>
        <h4>Version 4.2.2</h4>
        <ul>
            <li>New: Storage service implementing a CRUD to an arbitrary .Net type wrapped over a Google Worksheet</li>
            <li>New: Culture aware converters for Custom Object to and from Dictionaries</li>
            <li>New: Custom Type maker from arbitrary variables</li>
            <li>New: Available for download, collection of Postman API Requests, covering service usages and platform capabilities</li>
            <li>Improved: Crypto Service XmlSigner supports partial document signing</li>
            <li>Improved: Added extensive filtering capabilities to Google Spreadsheet List API</li>
            <li>Improved: Added Http Response Headers control to Web Api Return action</li>
            <li>Improved: Smarter API Action selector</li>
            <li>Improved: Web API routes can be declared at different scopes, in the optimal order</li>
            <li>Improved: List of registered routes is more expressive</li>
            <li>Fixed: several bugs in dynamic variable and actions engine</li>
            <li>Fixed: stop action is not trigger when alternate action is run</li>
        </ul>
        <h4>Version 4.2.1</h4>
        <ul>
            <li>New: Streaming Http proxy Handler to bypass same-origin policy and support external resources without CORS Http headers, with associated filtering Firewall rule to intercept / proxify html or Kml/Kmz documents content</li>
            <li>New: Bandwidth Protection Firewall rule with throttling of heavy users</li>
            <li>Improved: Deferred Rule and Action Execution properly accounted for</li>
            <li>Improved: Output Caching Strategy now supports toggling dynamic compression and bandwidth throttling</li>
            <li>Improved: Added friendly name and description to typed and node handlers</li>
            <li>Improved: XPath queries now support Dynamic Expressions, Namespace manager, and default namespaces prefix overrides (see https://msdn.microsoft.com/en-us/library/e5t11tzt.aspx )</li>
            <li>Improved: Flee Expressions now support variables with non visible types by resolving them to the closest visible base type</li>
            <li>Improved: CDN Rule XPath expression easily editable in CDN Strategy</li>
            <li>Fixed: CDN Rule default XPath expression uses local-name() instead of name()</li>
            <li>Fixed: Use of "~" to define relative urls</li>
            <li>Fixed: Requestcaps used in firewall DDOS rule and Bandwidth protection rule to a more conservative computation</li>
        </ul>
        <h4>Version 4.2.0</h4>
        <ul>
            <li>New: Rest Services revamp using DNN Web.api Service framework</li>
            <li>New: Sample Crypto Service with Encryption and XMLSignature</li>
            <li>Fixed: Custom Errors with virtual handler, response rewrites and per-status page pools are reintroduced now that DNN was fixed.</li>
            <li>Improved: Output caching with 304 status support</li>
            <li>Improved: CDN rule XPath was optimized</li>
            <li>Improved: Optimized Xml serialization to speed up deserialization</li>
            <li>Improved: Made Firewall recovery params optional</li>
            <li>Fixed: a condition where adapters get unexpetedly unregistered from browser configuration</li>
            <li>Fixed: Adapters don't need the firewall activated anymore</li>
        </ul>
        <h4>Version 4.1.1</h4>
        <ul>
            <li>New: Several sample User controls and base page dynamic Adapters</li>
            <li>New: Firewall Rule to display the server's name on demand</li>
            <li>New: Firewall Rule to setup a CDN</li>
            <li>New: Added version support for adapters</li>
            <li>New: Search Results Scraping Bot</li>
            <li>New: Thread synchronisation through monitor counters</li>
            <li>New: Google Spreadsheet API List access.</li>
            <li>Improved: Output Caching Rule sets ARR Affinity OptOut Response Header to support a load-balanced web farm.</li>
            <li>Improved: Updated Google Recaptcha Adapter to New API</li>
            <li>Improved: Dynamic Expression to define Firewall scope</li>
            <li>Improved: New parameters to optimize Dynamic Expressions</li>
            <li>Improved: Selection Set condition can include dynamic values</li>
        </ul>
        <h4>Version 4.1.0</h4>
        <ul>
            <li>Fixed: LogViewer ascx adapter with PageRecords redirection</li>
            <li>Fixed: A regression with firewall request event steps in action providers</li>
            <li>New: Firewall Critical Accounts protection condition tied to a dynamic DNN profile property</li>
            <li>New: Action Provider leveraging Google Spreadsheet API and sample bot.</li>
            <li>New: Firewall General Purpose Html Filter Rule.</li>
            <li>New: Firewall Output Caching  rule, with fine tuning.</li>
            <li>New: Url Control adapter with image preview.</li>
            <li>New: Option to share web clients, cookies for distinct requests, and to include a referer.</li>
        </ul>
        <h4>Version 4.0.2</h4>
        <ul>
            <li>Fixed: A regression with Redirect Actions bad inheritence</li>
            <li>Fixed: source set condition set to a simple list to account for selectors</li>
        </ul>
        <h4>Version 4.0.1</h4>
        <ul>
            <li>New: Http Handlers multiple path registration</li>
            <li>New: Private Torrent Tracker handler</li>
            <li>New: Debugger Break feature in action and condition providers</li>
            <li>Fixed: Improved Recaptcha Adapter</li>
        </ul>
        <h4>Version 4.0.0</h4>
        <ul>
            <li>New: Http Handlers and Control Adapters</li>
            <li>New: Many improvements in core and components</li>
        </ul>
        <h4>Version 3.1.0</h4>
        <ul>
            <li>New: Easier selection of common .Net types</li>
            <li>Fixed: Single Button to apply custom errors configuration</li>
        </ul>
        <h4>Version 3.0.1</h4>
        <ul>
            <li>DNN 7.05 compliant</li>
            <li>New features: Action tree expression mode for Multiple Action Provider,allows pager to compute the key with expression</li>
            <li>New features: Action command for User bots, allows to define user bots command like buttons </li>
            <li>New action providers: File Reader Action provider, allows to read a file to a given String variable, given its path by dynamic expressions </li>
            <li>New action providers: File Write Action provider, allows to write a content to a file, given its path and the content to write by dynamic expressions</li>
            <li>New action providers:  File Manager Action provider,allows to browse or delete files and folders, given a parent path by dynamic expressions</li>
            <li>Fixed: Several minor bugs</li>
        </ul>
    </div>
</div>
